package com.jwsoft.manager.common.vo.eduHousehold;

import com.baomidou.mybatisplus.annotation.TableField;
import com.bifang.assistant.common.vo.BasePageVO;
import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 户籍信息表QueryVO
 *
 * @author wangtao
 * @since 2022-12-02
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Schema(name = "EduHouseholdQueryVO", title = "户籍信息表查询VO", description = "户籍信息表查询实体类")
public class EduHouseholdQueryVO extends BasePageVO {

    @Schema(name = "householdId", title = "户籍id")
    private String householdId;

    @Schema(name = "hhid", title = "户号内部id")
    private String hhid;

    @Schema(name = "hh", title = "户号")
    private String hh;

    @Schema(name = "contractor", title = "承办人")
    private String contractor;

    @Schema(name = "ryzt", title = "人员状态")
    private String ryzt;

    @Schema(name = "ryid", title = "人员id")
    private String ryid;

    @Schema(name = "idcard", title = "公民身份证件编码")
    private String idcard;

    @Schema(name = "fullName", title = "姓名")
    private String fullName;

    @Schema(name = "beforeName", title = "曾用名")
    private String beforeName;

    @Schema(name = "height", title = "身高")
    private BigDecimal height;

    @Schema(name = "birthday", title = "出生日期")
    private String birthday;

    @Schema(name = "birthplace", title = "出生地")
    private String birthplace;

    @Schema(name = "sex", title = "性别")
    private String sex;

    @Schema(name = "country", title = "国家")
    private String country;

    @Schema(name = "nation", title = "民族")
    private String nation;

    @Schema(name = "nativePlace", title = "籍贯")
    private String nativePlace;

    @Schema(name = "addressCity", title = "户口所在地县市")
    private String addressCity;

    @Schema(name = "addressCountry", title = "户口所在乡镇街道")
    private String addressCountry;

    @Schema(name = "addressVillage", title = "户口所在村社区")
    private String addressVillage;

    @Schema(name = "addressVillageDetail", title = "户口所在地街路巷")
    private String addressVillageDetail;

    @Schema(name = "mlxz", title = "户口所在地门楼详址:mlxz和mlph只有其中一个")
    private String mlxz;

    @Schema(name = "mlph", title = "户口所在地门楼牌号:mlxz和mlph只有其中一个")
    private String mlph;

    @Schema(name = "address", title = "户口所在完整地址")
    private String address;

    @Schema(name = "addressId", title = "关联地址id")
    private String addressId;

    @Schema(name = "householdPlace", title = "户籍所在地")
    private String householdPlace;

    @Schema(name = "street", title = "所属街道")
    private String street;

    @Schema(name = "maritalStatus", title = "婚姻状况")
    private String maritalStatus;

    @Schema(name = "culturalLevel", title = "文化程度")
    private String culturalLevel;

    @Schema(name = "religion", title = "宗教信仰")
    private String religion;

    @Schema(name = "bloodType", title = "血型")
    private String bloodType;

    @Schema(name = "veteranTatus", title = "兵役状况")
    private String veteranTatus;

    @Schema(name = "householderIdcard", title = "户主身份证")
    private String householderIdcard;

    @Schema(name = "householder", title = "户主姓名")
    private String householder;

    @Schema(name = "accountType", title = "户口类型")
    private String accountType;

    @Schema(name = "relation", title = "与户主关系")
    private String relation;

    @Schema(name = "pcs", title = "户口登记公安机关编码")
    private String pcs;

    @Schema(name = "registrationDate", title = "登记日期")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date registrationDate;

    @Schema(name = "registrationAuthority", title = "登记机关")
    private String registrationAuthority;

    @Schema(name = "qfjg", title = "签发机关")
    private String qfjg;

    @Schema(name = "hssqlbz", title = "何省市迁来本址")
    private String hssqlbz;

    @Schema(name = "hssqxqlws", title = "何县区来本市")
    private String hssqxqlws;

    @Schema(name = "hxzlbd", title = "何详址来本址")
    private String hxzlbd;

    @Schema(name = "hsqlbs", title = "何时迁来本市")
    private String hsqlbs;

    @Schema(name = "hsqlbz", title = "何时迁来本址")
    private String hsqlbz;

    @Schema(name = "cityOtherAddress", title = "本市(县)其他地址")
    private String cityOtherAddress;

    @Schema(name = "serviceSpaces", title = "服务处所")
    private String serviceSpaces;

    @Schema(name = "number", title = "编号")
    private String number;

    @Schema(name = "tongTime", title = "数据归集日期")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date tongTime;

    @Schema(name = "primarySchoolOne", title = "可就读小学顺位1")
    private String primarySchoolOne;

    @Schema(name = "primarySchoolTwo", title = "可就读小学顺位2")
    private String primarySchoolTwo;

    @Schema(name = "primarySchoolThree", title = "可就读小学顺位3")
    private String primarySchoolThree;

    @Schema(name = "primarySchoolFour", title = "可就读小学顺位4")
    private String primarySchoolFour;

    @Schema(name = "juniorSchoolOne", title = "可就读初中顺位1")
    private String juniorSchoolOne;

    @Schema(name = "juniorSchoolTwo", title = "可就读初中顺位2")
    private String juniorSchoolTwo;

    @Schema(name = "juniorSchoolThree", title = "可就读初中顺位3")
    private String juniorSchoolThree;

    @Schema(name = "juniorSchoolFour", title = "可就读初中顺位4")
    private String juniorSchoolFour;

    @Schema(name = "qysj", title = "启用时间")
    private String qysj;

    @Schema(name = "xxqysj", title = "迁移时间")
    private String xxqysj;

    @Schema(name = "yxqxqsrq", title = "有效期起始日期")
    private String yxqxqsrq;

    @Schema(name = "yxqxjzrq", title = "有效期截止日期")
    private String yxqxjzrq;

    @Schema(name = "jlbz", title = "记录标志")
    private String jlbz;

    @Schema(name = "year", title = "年份")
    private Integer year;

    @Schema(name = "areaCode", title = "行政区划")
    private String areaCode;

    @Schema(name = "authStatus", title = "审核状态")
    private String authStatus;

    @Schema(name = "status", title = "是否启用0.禁用1.启用")
    private String status;

    @Schema(name = "materials", title = "佐证材料")
    @TableField(value = "materials")
    private String materials;
}
